文字转语音的五种方式
一、使用win32com进行转换1. 安装win32com2. 导入并使用
二、使用pyttsx3的语音库直接进行转换1. 安装pyttsx32. 使用
三、使用特定或者本人的声音进行转换前言1. 文字转成拼音2. 调整音频速度3. 调整声音大小4. 文件保存地址5. 入口函数6. 总代码提示:
四、调用百度语音api接口(人美声甜)1. 登录2. python代码
五、机器学习(感情机器)
一、使用win32com进行转换
1. 安装win32com
pip install win32com
2. 导入并使用
import win32com.client
speaker = win32com.client.Dispatch(SAPI.SpVoice")
str1 = """
金樽清酒斗十千,玉盘珍羞直万钱。
停杯投箸不能食,拔剑四顾心茫然。
欲渡黄河冰塞川,将登太行雪满山。
闲来垂钓碧溪上,忽复乘舟梦日边。
行路难,行路难,多歧路,今安在?
长风破浪会有时,直挂云帆济沧海
"""
speaker.Speak(str1)
二、使用pyttsx3的语音库直接进行转换
1. 安装pyttsx3
pip install pyttsx3
2. 使用
代码如下(示例):
# 创建对象
engine = pyttsx3.init()
# 获取当前语音速率
rate = engine.getProperty('rate')
print(f'语音速率:{rate}')
# 设置新的语音速率
engine.setProperty('rate', 200)
# 获取当前语音音量
volume = engine.getProperty('volume')
print(f'语音音量:{volume}')
# 设置新的语音音量,音量最小为 0,最大为 1
engine.setProperty('volume', 1.0)
# 获取当前语音声音的详细信息
voices = engine.getProperty('voices')
print(f'语音声音详细信息:{voices}')
# 设置当前语音声音为女性,当前声音不能读中文
engine.setProperty('voice', voices[1].id)
# 设置当前语音声音为男性,当前声音可以读中文
engine.setProperty('voice', voices[0].id)
# 获取当前语音声音
voice = engine.getProperty('voice')
print(f'语音声音:{voice}')
# 语音文本
path = 'test.txt' #或者直接导入一个文本文件
words = """金樽清酒斗十千,玉盘珍羞直万钱。
欲渡黄河冰塞川,将登太行雪满山。
闲来垂钓碧溪上,忽复乘舟梦日边。
行路难,行路难,多歧路,今安在?
长风破浪会有时,直挂云帆济沧海。"""
# 将语音文本说出来
engine.say(words)
engine.runAndWait()
engine.stop()
三、使用特定或者本人的声音进行转换
前言
目前市面上的python文字转语音工具包都是已经实现封装好的(不能够我们娇滴滴想要的效果🤣),调用其他百度智能云或者腾讯智能云,还不免费😪,身为程序员的我们怎么可能被难到hhh,打破龙垄断,实现自由小康🤞奥里给
1. 文字转成拼音
将汉字通过xpinyin 包的方法转换成拼音
def chinese_phonetic(wenzi_data):
"""
:param wenzi_data: data
:return: 拼音
"""
p = Pinyin()
punc = '~`!#$%^&*()_+-=|\';":/.,?> |